perm filename TEST2.PAS[S1,ALS] blob sn#413746 filedate 1979-01-31 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00003 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	(*PROGRAM HEADER PAGE*)
C00005 00003	program tstrun (input, output, file0, file1)
C00008 ENDMK
CāŠ—;
(*PROGRAM HEADER PAGE*)

(*PAS10 OPTIONS*) (* D+,R32,S1300*)			(*X10S1*)

(*							     DEFAULT

D+	DEBUG AND POSTMORTEM DUMP				-
E+	EXTERNAL CALLS TO LEVEL 1 PROCEDURES ALLOWED		-
Fn	FILE OPTION						1
I+	FORTRAN I/O IN EXTERNAL FORTRAN SUBROUTINES		-
L+	OBJECT LISTING						-
Rn	SIZE OF LOW-SEGMENT				(SEE PAS10 MANUAL)
Sn	MAX INSTRUCTIONS PER STATEMENT			       1000
T+	RUNTIME CHECK						+
U+	72 COLUMN FORMAT					-
Xn	HIGHEST REGISTER FOR PARAMETERS				6
*)

(*SLAC PCPASC OPTIONS*) (* B+,D+,M-*)

(*							     DEFAULT

A+	GENERATE 370 OBJECT MODULE				-
A-	GENERATE 370 ASSEMBLY MODULE
B+	BOUNDS CHECKING, BUT ALLOW 'BIG' CHARACTERS		-
C+	EMIT PCODE						+
D+	RUNTIME CHECKING OF POINTER, INDEX, SUBRANGE VALUES	-
E+	FILE IS IN EBCDIC CHARACTER SET				-
F+	SAVE FPR'S ON PROCEDURE/FUNCTION ENTRY			+
K+	ENABLE STATEMENT EXECUTION COUNTING			-
L+	LIST SOURCE PROGRAM					+
M+	72 COLUMN FORMAT					+
P+	DOUBLE-WORD BOUNDARY ALIGNMENT				-
S+	SAVE GPR'S ON PROCEDURE/FUNCTION ENTRY			+
T+	PRINT SYMBOL TABLES (FOR POST-PROCESSOR)		-
U+	GET STATISTICS?? 2ND PARAMETER TO PCODE BGN INSTR.	-
V+	?? 3RD PCODE BGN INSTRUCTION PARAMETER			-
X+	USE ACTUAL PROCEDURE NAMES FOR EXTERNAL REFERENCES	-
X-	GENERATE UNIQUE 8-CHAR NAMES FOR EXTERNAL REFERENCES
*)

(*S1 PCPASC OPTION DIFFERENCES*) (*$A+,B+,D+,L-,M120*)	(*X10S1*)



(*							     DEFAULT

A+	GENERATE S1 ASSEMBLY MODULE				-
A-	GENERATE S1 OBJECT MODULE
*)

(* SLAC/PDP-10 TRANSPORT DEPENDENCIES FLAGGED WITH "XSL10" *)
(* PDP-10/S-1 TRANSPORT DEPENDENCIES FLAGGED WITH "X10S1" *)
program tstrun (input, output, file0, file1);
const
  LINT = 800000;
  SINT = 100000;
var
  M1,M2,M3,M4,M5,M6: integer;
procedure AA(A1,A2,A3 : integer);
var
  A4,A5,A6 := integer;
  begin
  A4 := A1;
  A5 := A2;
  A6 := A3;
  if A1 = M1 then WRITE(OUTPUT,'A1 = M1')
  else WRITE(OUTPUT,'A1 <> M1');
  end;
procedure BB(B1,B2,B3 : integer);
var
  B4,B5,B6 : integer;
  begin
  B4 := B1;
  B5 := B2;
  B6 := B3;
  WRITE(OUTPUT,'This is BB');
  AA(B4,B5,B6);
  end;
procedure CC(C1,C2,C3 : integer);
var
  C4,C5,C6 :integer;
  begin
  C4 := C1;
  C5 := C2;
  C6 := C3;
  WRITE(OUTPUT,'This is CC');
  BB(C4,C5,C6);
  end;
begin
  M1 := LINT;
  M2 := LINT;
  M3 := LINT;
  WRITE(OUTPUT,'This is MM');
  CC(M1,M2,M3);
  end.